package com.hifar.test.template.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.hifar.enums.ReportTypeEnum;
import com.hifar.test.template.pojo.HfEnvTemplate;
import com.hifar.test.template.pojo.VO.HfEnvTemplateVO;

/**
 * @author zhuWeiWei
 * @description: 模板管理
 * @date 2024/12/27 15:46
 */
public interface IHfEnvTemplateService extends IService<HfEnvTemplate> {
    /**
     * 新增模板
     *
     * @param envTemplate
     */
    void saveTemplate(HfEnvTemplateVO envTemplate);

    /**
     * 查询该模板类型 模板数量
     *
     * @param templateType 模板类型
     * @return
     */
    int countTemplate(String templateType);

    /**
     * 查询该模板类型下模板数量
     *
     * @param templateType
     * @param id
     * @return
     */
    int countTemplateNotId(String templateType, String id);

    /**
     * 修改模板
     *
     * @param envTemplate
     */
    void editTemplate(HfEnvTemplateVO envTemplate);

    /**
     * 查询详情
     *
     * @param id
     * @return
     */
    HfEnvTemplateVO queryVoById(String id);

    /**
     * 获取报告模板
     *
     * @return
     */
    HfEnvTemplate getReportTemplate();

    /**
     * 根据模板类型 获取模板
     * @param typeEnum 模板类型
     * @return
     */
    HfEnvTemplate getTemplateByType(ReportTypeEnum typeEnum);
}
